home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
program
/
gemxx19.zoo
/
gem++19
/
man
/
gema.man
< prev
next >
Wrap
Text File
|
1993-06-01
|
3KB
|
91 lines
GEM++ - C++ LIBRARIES FOR GEM/AES/VDI
NAME
GEMactivity - an interaction with the user through the GEM interface.
DESCRIPTION
An interaction is defined by a collection of objects - a menu, some
windows, a desk accessory, a keysink and timer, all of which are
optional.
Objects add themselves to the activity when they are created
and deleted. For example:
GEMactivity myactivity;
GEMrsc myrsc;
GEMmenu mymenu(myactivity, myrsc, RSC_INDEX_OF_MENU);
During the interaction, objects are passed relevent GEMevents,
and they return GEMfeedback. The interaction continues until
one of the objects returns a GEMfeedback message indicating that
the interaction should end - for example, the GEMmenu might
return EndInteraction when the "Quit" item is selected.
A GEMactivity may only have one menu, one desk accessory and one
keysink, so declare at most one of each of these object types
(this should change in the future).
CONSTRUCTORS
GEMactivity()
Create a GEMactivity containing no objects.
METHODS
void Do()
Conduct a user interaction until one of the event processing
objects signals for the interaction to end - see GEMfeedback.
void BeginDo()
GEMfeedback OneDo()
GEMfeedback OneDo(int eventmask)
void EndDo()
By using these three calls, the interaction can be done in
a polling manner - useful for adding GEM++ code as a front
end to a non-event-driven program - such as one that is centred
around a keyboard which is _read_ by the program rather than
the user interface driving the program. The Do() method
above is equivalent to:
BeginDo();
while (OneDo()!=EndInteraction) /* continue */;
EndDo();
The second form - OneDo(int eventmask) allows even greater
control of event processing by allowing events to be masked
out. See GEMevent (and gemfast.h) for eventtype values.
GEMactivity does contain other methods that are used by components
to register and deregister themselves. They are not needed by the
library user.
USAGE
Declare a GEMapplication (always do this once before you use GEM).
Declare a GEMrsc (you'll usually need one!).
Declare a GEMactivity.
Declare component objects that are to be in the activity.
Do() the activity.
Exit your program.
SEE ALSO
GEMmenu, GEMwindow, GEMformwindow, GEMdesktop, GEMdeskaccessory,
GEMkeysink, GEMtimer.
BUGS
Bugs in GEM++ should be reported to warwick@cs.uq.oz.au
AUTHOR
Warwick Allison, 1993.
warwick@cs.uq.oz.au
COPYING
This functionality is part of the GEM++ library,
and is Copyright 1993 by Warwick W. Allison.
GEM++ is free and protected under the GNU Library General Public
License.
You are free to copy and modify these sources, provided you
acknowledge the origin by retaining this notice, and adhere to
the conditions described in the GNU LGPL.